package com.github.cakin.shiro.chapter8.web.filter;

import org.apache.shiro.web.filter.PathMatchingFilter;

import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import java.util.Arrays;

/**
 * @className: MyPathMatchingFilter
 * @description: PathMatchingFilter 继承了 AdviceFilter，提供了 url 模式过滤的功能，如果需要对指定的请求进行处理，
 * 可以扩展 PathMatchingFilter
 * @date: 2020/5/21
 * @author: cakin
 */
public class MyPathMatchingFilter extends PathMatchingFilter {

    /**
     * 功能描述：如果 url 模式与请求 url 匹配，那么会执行 onPreHandle，并把该拦截器配置的参数传入。默认什么不处理直接返回 true。
     *
     * @param
     * @return
     * @author cakin
     * @date 2020/5/21
     * @description:
     */
    @Override
    protected boolean onPreHandle( ServletRequest request, ServletResponse response, Object mappedValue ) throws Exception {
        System.out.println("url matches,config is " + Arrays.toString((String[]) mappedValue));
        return true;
    }
}
